<?php


namespace app\cms\authCallBack;

use iflow\auth\Authorize\AuthHandle;
use iflow\Response;

class authCallBack
{

    /**
     * AUTH权限验证回调方法
     * @param AuthHandle $auth
     * @return bool|Response
     * @throws \Exception
     */
    public function handle(AuthHandle $auth): bool|Response
    {
        // 如果验证通过
        if (!$auth -> error) {
            // 验证是否开启SAAS服务
            if (!config('app@saasEnable')) return false;

            // 验证当前 会话信息是否 于 当前域名
            if (session('userInfo')['domain'] === request() -> getHeader('host')) {
                return false;
            }
        }
        return message() -> unauthorized_error('暂无权限访问');
    }
}